package org.zk.dubbo_consumer.util;
/**
 * 云片短信util（高顺）
 */

import com.yunpian.sdk.YunpianClient;
import com.yunpian.sdk.model.Result;
import com.yunpian.sdk.model.SmsSingleSend;

import java.util.Map;

public class YunPianSend {

    public static int ypsend(String phone){
        /**
         * 使用SDK发送单条短信,智能匹配短信模板
         *
         * @param apikey 成功注册后登录云片官网,进入后台可查看
         * @param text 需要使用已审核通过的模板或者默认模板
         * @param mobile 接收的手机号,仅支持单号码发送
         */

        //初始化client,apikey作为所有请求的默认值(可以为空)
        YunpianClient clnt = new YunpianClient("ca28ff693489424c49dd0c53ba8827f8").init();
        int mobile_code = (int)((Math.random()*9+1)*100000);

        Map<String, String> param = clnt.newParam(2);
        param.put(YunpianClient.MOBILE, phone);
        param.put(YunpianClient.TEXT, "【生活中的jiguo】您的验证码是"+mobile_code+"。如非本人操作，请忽略本短信");
        Result<SmsSingleSend> r = clnt.sms().single_send(param);
        //获取返回结果，返回码:r.getCode(),返回码描述:r.getMsg(),API结果:r.getData(),其他说明:r.getDetail(),调用异常:r.getThrowable()
        r.getData();
        //账户:clnt.user().* 签名:clnt.sign().* 模版:clnt.tpl().* 短信:clnt.sms().* 语音:clnt.voice().* 流量:clnt.flow().* 隐私通话:clnt.call().*

        //最后释放client
        clnt.close();
        System.out.println("返回结果："+r);
        return mobile_code;
    }
}
